/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package com.adsi.logica;

import com.adsi.modelo.TiposUsuarios;
import java.util.List;
import javax.ejb.Stateless;
import com.adsi.persistencia.ITiposUsuarioDAO;
import javax.ejb.EJB;

/**
 *
 * @author Estudiante
 */
@Stateless
public class LogicaTipoUsuario implements LogicaTipoUsuarioLocal {
@EJB
private ITiposUsuarioDAO tiposusuarioDAO;
    @Override
    public void registrar(TiposUsuarios tiposusuario) throws Exception {
     TiposUsuarios objTiposU=  tiposusuarioDAO.ConsultarPorCod(tiposusuario.getTusuCodigo());
     if (objTiposU != null) {
            throw new Exception("El Tipo De Usuario A Registrar Ya Existe");

        }
        if (tiposusuario.getTusuCodigo()== null) {
            throw new Exception("El Codigo Es Obligatorio");

        }
        if (tiposusuario.getTusuNombre()== null) {
            throw new Exception("El Nombre Es Obligatorio");

        }

        tiposusuarioDAO.registrar(tiposusuario);

    }
    

    @Override
    public void modificar(TiposUsuarios tiposusuario) throws Exception {
         TiposUsuarios objTiposU = tiposusuarioDAO.ConsultarPorCod(tiposusuario.getTusuCodigo());
        if (objTiposU == null) {
            throw new Exception("El Tipo De Usuario A Registrar No Existe");

        }
        if (tiposusuario.getTusuCodigo()== null) {
            throw new Exception("El Codigo Es Obligatorio");

        }
        if (tiposusuario.getTusuNombre()== null) {
            throw new Exception("El Nombre Es Obligatorio");

        }

        tiposusuarioDAO.modificar(tiposusuario);

    }

    @Override
    public void eliminar(TiposUsuarios tiposusuario) throws Exception {
          TiposUsuarios objTiposU= tiposusuarioDAO.ConsultarPorCod(tiposusuario.getTusuCodigo());
        if (objTiposU == null) {
            throw new Exception("El Tipo De Usario A Eliminar No Existe");

        }
        tiposusuarioDAO.eliminar(tiposusuario);
    
    }

    @Override
    public List<TiposUsuarios> consultar() throws Exception {
       return tiposusuarioDAO.consultar();
    }

    @Override
    public TiposUsuarios consultarPorDoc(Long codigotipousuario) throws Exception {
         if (codigotipousuario == null) {
            throw new Exception("El Codigo Es Obligatorio");

        }
        return tiposusuarioDAO.ConsultarPorCod(codigotipousuario);
    }

    // Add business logic below. (Right-click in editor and choose
    // "Insert Code > Add Business Method")
}
